//Poly_OPeration.h
//zhunan 2010-3-23

#ifndef POLY_OP_H
#define POLY_OP_H
//designed by zhunan 2010-3-12
#include "crossbit/VBlock.h"
#include "Logical_Hardware.h"
#include <iostream>

using namespace std;
using namespace crossbit;
namespace polytope
{
	class Poly_Operation
	{
		typedef struct
		{
			int x;
			int y;
			int z;
		}Index;
		Index idx;

//		VBlock * vb;
		public:
			Poly_Operation()
			{
			}

			~Poly_Operation()
			{
			}
			Index Get_Idx()
			{
				return idx;
			}
			Index Set_Idx(int a,int b,int c)
			{
				idx.x=a;
				idx.y=b;
				idx.z=c;
			}

			int Mem_Op_Analysis()
			{
				return 1;
			}
			
			vector <int> Dependence_Vector;

		private:
			vector <XTMemAddr> Read_addr;
			vector <XTMemAddr> Write_addr;
			

	};

}


#endif

